def find_clap_numbers(max_num=100):
    """
    找出指定范围内（默认1-100）需要拍手的数字
    拍手规则：数字是7的倍数，或数字中包含7
    """
    clap_numbers = []  # 存储需要拍手的数字及原因
    for num in range(1, max_num + 1):
        # 判断是否满足拍手条件
        is_multiple_of_7 = num % 7 == 0  # 是7的倍数
        contains_7 = '7' in str(num)     # 数字中包含7
        
        if is_multiple_of_7 or contains_7:
            # 记录数字和拍手原因
            reason = []
            if is_multiple_of_7:
                reason.append("7的倍数")
            if contains_7:
                reason.append("包含数字7")
            clap_numbers.append((num, "、".join(reason)))
    return clap_numbers

if __name__ == "__main__":
    print("=" * 50)
    print("🎮 逢7拍手游戏 - 100以内需要拍手的数字")
    print("=" * 50)
    print("拍手规则：数字是7的倍数 或 数字中包含7")
    print("-" * 50)
    
    # 获取100以内需要拍手的数字
    clap_list = find_clap_numbers(100)
    
    # 输出结果（按格式展示）
    print("需要拍手的数字列表：")
    for idx, (number, reason) in enumerate(clap_list, 1):
        print(f"{idx:2d}. 数字 {number:3d} → 拍手（{reason}）")
    
    print("-" * 50)
    print(f"📊 统计：1-100范围内共有 {len(clap_list)} 个数字需要拍手")
    print("=" * 50)